package net.mfjassociates.finance.domain.mfjfin_newdb;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.roo.addon.dbre.RooDbManaged;
import org.springframework.roo.addon.javabean.RooJavaBean;
import org.springframework.roo.addon.jpa.activerecord.RooJpaActiveRecord;
import org.springframework.roo.addon.tostring.RooToString;

@RooJavaBean
@RooToString
@RooJpaActiveRecord(entityName="net.mfjassociates.finance.domain.mfjfin_newdb.ExpenseDetails", versionField = "", table = "ExpenseDetails", schema = "dbo")
public class ExpenseDetails {

	@ManyToOne
    @JoinColumn(name = "ExpenseCategoryID", referencedColumnName = "ExpenseCategoryID")
    private ExpenseCategories expenseCategoryId;

	@ManyToOne
    @JoinColumn(name = "ExpenseReportID", referencedColumnName = "ExpenseReportID")
    private ExpenseReports expenseReportId;

	@Column(name = "ExpenseItemAmount", precision = 19, scale = 4)
    private BigDecimal expenseItemAmount;

	@Column(name = "ExpenseItemDescription", length = 50)
    private String expenseItemDescription;

	@Column(name = "ExpenseDate")
    @Temporal(TemporalType.TIMESTAMP)
    @DateTimeFormat(style = "M-")
    private Date expenseDate;

	@Column(name = "ExpenseItemGST", precision = 19, scale = 4)
    private BigDecimal expenseItemGst;

	@Column(name = "ExpenseItemTaxCode")
    private Integer expenseItemTaxCode;

	@Column(name = "ExpenseItemNoTax", precision = 19, scale = 4)
    private BigDecimal expenseItemNoTax;

	public ExpenseCategories getExpenseCategoryId() {
        return expenseCategoryId;
    }

	public void setExpenseCategoryId(ExpenseCategories expenseCategoryId) {
        this.expenseCategoryId = expenseCategoryId;
    }

	public ExpenseReports getExpenseReportId() {
        return expenseReportId;
    }

	public void setExpenseReportId(ExpenseReports expenseReportId) {
        this.expenseReportId = expenseReportId;
    }

	public BigDecimal getExpenseItemAmount() {
        return expenseItemAmount;
    }

	public void setExpenseItemAmount(BigDecimal expenseItemAmount) {
        this.expenseItemAmount = expenseItemAmount;
    }

	public String getExpenseItemDescription() {
        return expenseItemDescription;
    }

	public void setExpenseItemDescription(String expenseItemDescription) {
        this.expenseItemDescription = expenseItemDescription;
    }

	public Date getExpenseDate() {
        return expenseDate;
    }

	public void setExpenseDate(Date expenseDate) {
        this.expenseDate = expenseDate;
    }

	public BigDecimal getExpenseItemGst() {
        return expenseItemGst;
    }

	public void setExpenseItemGst(BigDecimal expenseItemGst) {
        this.expenseItemGst = expenseItemGst;
    }

	public Integer getExpenseItemTaxCode() {
        return expenseItemTaxCode;
    }

	public void setExpenseItemTaxCode(Integer expenseItemTaxCode) {
        this.expenseItemTaxCode = expenseItemTaxCode;
    }

	public BigDecimal getExpenseItemNoTax() {
        return expenseItemNoTax;
    }

	public void setExpenseItemNoTax(BigDecimal expenseItemNoTax) {
        this.expenseItemNoTax = expenseItemNoTax;
    }
}
